home *** CD-ROM | disk | FTP | other *** search
/ Columbia Kermit / kermit.zip / bench / x.txt / 000108_fdc@watsun.cc.columbia.edu_Sun Nov 4 14:24:30 EST 2001.msg < prev    next >
Text File  |  2020-01-01  |  2KB  |  64 lines

  1. Article: 12926 of comp.protocols.kermit.misc
  2. Path: newsmaster.cc.columbia.edu!watsun.cc.columbia.edu!fdc
  3. From: fdc@watsun.cc.columbia.edu (Frank da Cruz)
  4. Newsgroups: comp.unix.sco.misc,comp.protocols.kermit.misc
  5. Subject: Dropping DTR in OSR5
  6. Date: 4 Nov 2001 18:19:37 GMT
  7. Organization: Columbia University
  8. Lines: 48
  9. Message-ID: <9s40rp$fdh$1@newsmaster.cc.columbia.edu>
  10. NNTP-Posting-Host: watsun.cc.columbia.edu
  11. X-Trace: newsmaster.cc.columbia.edu 1004897977 15793 128.59.39.2 (4 Nov 2001 18:19:37 GMT)
  12. X-Complaints-To: postmaster@columbia.edu
  13. NNTP-Posting-Date: 4 Nov 2001 18:19:37 GMT
  14. Xref: newsmaster.cc.columbia.edu comp.unix.sco.misc:139879 comp.protocols.kermit.misc:12926
  15.  
  16.  
  17. In getting C-Kermit 8.0 ready for release:
  18.  
  19.   http://www.columbia.edu/kermit/ck80.html
  20.  
  21. I was testing it on SCO OSR5.0.5 and discovered that the DIAL command
  22. didn't work:
  23.  
  24.   set modem type usrobotics
  25.   set line /dev/tty1A
  26.   set speed 38400
  27.   dial 7654321
  28.  
  29. The DIAL command turns off DTR and RTS and they don't come on again.
  30.  
  31. This can be worked around by giving Kermit either of the following commands:
  32.  
  33.   set dial hangup off
  34.   set modem hangup-command modem-command
  35.  
  36. Each of these prevents Kermit from trying to drop DTR for half a second
  37. prior to dialing.
  38.  
  39. But the real problem is that when Kermit *does* try to drop DTR briefly,
  40. it never comes back on.  So I need to ask: What is the way to turn off
  41. DTR and then turn it back on in OSR5?  Currently I am using the POSIX
  42. way:
  43.  
  44.   cfgetospeed() and cfgetispeed() to get the speeds.
  45.   cfsetospeed() and cfsetispeed() to set the speed to 0.
  46.   tcsetattr() to make the speed changes take effect.
  47.   (pause)
  48.   cfsetospeed() and cfsetispeed() to restore the original speeds.
  49.   tcsetattr() to make the speed changes take effect.
  50.  
  51. The same code works fine on Linux, FreeBSD, and other platforms that use
  52. POSIX APIs.  It appears to work fine in OSR5 too: the steps before the
  53. pause actually do work.  But the steps after the pause, although they
  54. return no error indication and do not set errno, do not in fact make DTR
  55. and RTS come back on (as shown by the modem lights and the failure of the
  56. modem to respond to further commands).
  57.  
  58. Speaking of modem signals, how are we supposed to read them?  The TIOCMGET
  59. ioctl() fails with error 22 ("invalid argument").
  60.  
  61. Thanks.
  62.  
  63. - Frank
  64.